class Solution {
public:
    void moveZeroes(vector<int>& nums) {
        //双指针
        int dist=-1;int cur=0;
        //这个dist得从-1开始因为这样的话才能判断上第一个
        //不然的话无法处理第一个数字不是0的情况
        while(cur<=nums.size()-1)
        {
            if(nums[cur])
            {
                swap(nums[++dist],nums[cur]);
            }
            cur++;
        }
    }
};